Data that has been subjected to error correction coding is usually stored in a storage device in order to protect data to be stored. Therefore, when the data stored in the storage device is read out, decoding for the data that has been subjected to error correction coding is performed.